package com.pxmeta.user.entity;

import com.baomidou.mybatisplus.annotation.*;

import com.pxmeta.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 用户对象 kt_user
 *
 * @author wcl
 * @date 2022-03-20
 */
@EqualsAndHashCode(callSuper = true)
@Data
@TableName("kt_user")
public class User extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /** 头像 */
    private String avatar;

    private String avatarFrame;

    /** 用户名 */
    private String username;

    private String account;

    /**
     * 密码
     */
    private String password;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 上级用户id
     */
    private Long parentUserId;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 性别1男2女0未知
     */
    @ApiModelProperty("性别1男2女0未知")
    private Integer sex;

    /**
     * 金币余额
     */
    private BigDecimal balance;

    /**
     * 总收益
     */
    private BigDecimal totalProfit;

    /**
     * 标签id，多个逗号分割
     */
    private String tagIds;

    /**
     * 是否身份认证
     */
    private Integer isAuthIdentity;

    /**
     * 是否开启照片墙
     */
    private Boolean isOpenPhoto;

    /**
     * 是否是学生
     */
    private Integer isStudent;

    /**
     * 系统圈子id
     */
    private Long sysCircleId;

    private String circleIds;

    /**
     * 是否可用
     */
    private Integer enabled;

    /**
     * 生日
     */
    private LocalDate birthday;

    /**
     * 是否删除
     */
    @TableLogic
    private Integer isDel;

    /**
     * 是否是机器人
     */
    private Integer isRobot;


    /**
     * 会员类型
     */
    private Integer memberType;

    /**
     * 开通会员时间
     */
    private LocalDateTime makeMemberTime;

    @ApiModelProperty(value = "是否可赠送")
    private Integer isGiveBalance;


    /**
     * 微信id
     */
    private String wxUnionId;

    /**
     * 苹果id
     */
    private String appleId;

    /**
     * 学校名称
     */
    private String schoolName;

    @ApiModelProperty(value = "简介")
    private String intro;

    @ApiModelProperty(value = "是否是靓号")
    private Integer isBeautifulId;

    @ApiModelProperty(value = "自我介绍")
    private String about;

    @ApiModelProperty(value = "声音名片")
    private String voice;

    @ApiModelProperty(value = "声音名片背景")
    private String voiceImg;

    @ApiModelProperty(value = "地理位置")
    private String address;

    @ApiModelProperty(value = "省份")
    private String province;

    @ApiModelProperty(value = "市区")
    private String district;

    @ApiModelProperty(value = "公会id")
    private Long associationId;

    @ApiModelProperty(value = "是否开启个性化推荐")
    private Integer isOpenRecommend;

    @ApiModelProperty(value = "美食大排档余额")
    private Integer foodStallBalance;

    @ApiModelProperty(value = "星际探险余额")
    private Integer adAstraBalance;

    @TableField(exist = false)
    @ApiModelProperty(value = "用户在圈子里的级别 0普通成员，1管理，2圈主")
    private Integer circleLevel;

    @ApiModelProperty(value = "邀请码")
    private String inviteCode;

    @TableField(exist = false)
    private Long disabledTime;
}
